<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // 区别：存储位置不一样
        // 函数方法 - 存在函数上
        // Promise.resolve();
        // 原型方法 - 存在原型上
        // p1.then();

        // promise API
        // Promise.resolve(); 功能：直接返回一个成功的promise //成功的promise
        // 1. 调用Promise.resolve() 不传参，默认返回成功promise，结果值为undefined
        // let p = Promise.resolve();
        // console.log(p);

        // 2. 调用Promise.resolve()方法，传入一个非promise的参数
        // 返回一个成功的promise - 结果值：参数
            // 1.2 参数 "1"
            // 1.3 参数 true
        // let p = Promise.resolve(1);
        // let p = Promise.resolve(true);
        // console.log(p);
        
        // 3. 调用Promise.resolve()方法，传入一个promise作为参数
        // let p = Promise.resolve(new Promise((res,rej)=>{}));
        // let p = Promise.resolve(new Promise((res,rej)=>{res('success')}));
        // let p = Promise.resolve(new Promise((res,rej)=>{rej('err')}));
        // let p = Promise.resolve(new Promise((res,rej)=>{throw '123'}));
        // console.log(p);
            // 3.1 Promise.resolve() 传入一个状态为pending的promise对象
            // 3.2 Promise.resolve() 传入一个状态为resolve的promise对象
            // 3.3 Promise.resolve() 传入一个状态为reject的promise对象
            
            // 总结：Promise.resolve传入的是promise，就会将这个参数promise返回
            // promise参数的结果就是Promise.resolve()的结果，状态也一样！

    </script>
</body>

</html>